package com.yami.shop.bean.model;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.Date;

@TableName("tz_nft_manage")
@Data
public class NftManage implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(type = IdType.AUTO)
    @Schema(description = "链平台id")
    private Long id;

    @NotNull(message="类型不能为空")
    @Schema(description = "类型  0：链  1：发行平台")
    private Integer type;

    @Schema(description = "店铺id，链为0")
    private Long shopId;

    @NotBlank(message="链平台名称不能为空")
    @Schema(description = "链平台名称")
    private String name;

    @Schema(description = "链平台logo")
    private String icon;

    @Schema(description = "发行平台编号")
    private String code;

    @Schema(description = "排序")
    private Integer orderNum;

    @Schema(description = "状态 0：正常 1：禁用")
    private Integer status;

    @Schema(description = "链平台英文名称")
    private String nameEn;

    @Schema(description = "平台接口域名")
    private String domain;

    @Schema(description = "备注")
    private String remarks;

    @Schema(description = "助记词")
    private String mnemonic;

    @Schema(description = "链上地址")
    private String address;

    @Schema(description = "虚拟发行平台 0：否   1：是")
    private Integer isVirtual;

    @Schema(description = "创建时间")
    private Date createTime;

    @Schema(description = "创建时间")
    private Date updateTime;

    private Integer isSynchronization;

    @TableField(exist = false)
    private String downstreamShopId;

}
